home *** CD-ROM | disk | FTP | other *** search
/ Clickx 115 / Clickx 115.iso / software / tools / windows / tails-i386-0.16.iso / live / filesystem.squashfs / usr / share / console-setup / kbdnames-maker < prev    next >
Encoding:
Text File  |  2013-01-05  |  1.7 KB  |  62 lines

  1. #!/usr/bin/perl
  2.  
  3. use warnings 'all';
  4. use strict;
  5. use Locale::gettext;
  6. use POSIX;
  7.  
  8. BEGIN {
  9.     my $file;
  10.     if ($ARGV[0]) {
  11.     $file = $ARGV[0];
  12.     } else {
  13.     $file = 'KeyboardNames.pl';
  14.     }
  15.     do "$file";
  16. }
  17.  
  18. for my $model (keys %KeyboardNames::models) {
  19.     my $name = $KeyboardNames::models{$model};
  20.     print "C*model*$name*$model\n"
  21. }
  22. for my $layout (keys %KeyboardNames::layouts) {
  23.     my $name = $KeyboardNames::layouts{$layout};
  24.     print "C*layout*$name*$layout\n";
  25.     print "C*variant*$name**$layout\n";
  26.     for my $variant (keys %{$KeyboardNames::variants{$name}}) {
  27.     my $variantname = $KeyboardNames::variants{$name}{$variant};
  28.     print "C*variant*$name*$variantname*$layout - $variant\n";
  29.     }
  30. }
  31.  
  32. # Make sure we output UTF-8
  33. $ENV{'LC_ALL'} = "en_US.UTF-8";
  34. binmode STDOUT, ":utf8";
  35.  
  36. for my $mo (</usr/share/locale/*/LC_MESSAGES/xkeyboard-config.mo>) {
  37.     my $lang = $mo;
  38.     $lang =~ s:/usr/share/locale/(.*)/LC_MESSAGES/xkeyboard-config.mo:$1:;
  39.     $ENV{'LANGUAGE'} = $lang;
  40.     setlocale(LC_ALL,"");
  41.  
  42.     $lang =~ s:\@:__:;
  43.     $lang =~ s:__Latn:__latin:; # special fixup for sr
  44.  
  45.     my $d = Locale::gettext->domain("xkeyboard-config");
  46.  
  47.     for my $model (keys %KeyboardNames::models) {
  48.     my $name = $KeyboardNames::models{$model};
  49.     print "$lang*model*$name*".($d->get($model))."\n"
  50.     }
  51.     for my $layout (keys %KeyboardNames::layouts) {
  52.     my $name = $KeyboardNames::layouts{$layout};
  53.     my $local_layout = $d->get($layout);
  54.     print "$lang*layout*$name*$local_layout\n";
  55.     print "$lang*variant*$name**$local_layout\n";
  56.     for my $variant (keys %{$KeyboardNames::variants{$name}}) {
  57.         my $variantname = $KeyboardNames::variants{$name}{$variant};
  58.         print "$lang*variant*$name*$variantname*$local_layout - ".($d->get($variant))."\n";
  59.     }
  60.     }
  61. }
  62.